home *** CD-ROM | disk | FTP | other *** search
/ Cre@te Online 2000 December / Cre@teOnline CD05.iso / MacSoft / XML ConsoleMax.sea / XML ConsoleMax / Required / swingall.jar / javax / swing / text / html / StyleSheet$ResolvedStyle.class (.txt) < prev    next >
Encoding:
Java Class File  |  1999-07-15  |  3.2 KB  |  174 lines

  1. package javax.swing.text.html;
  2.  
  3. import java.util.Enumeration;
  4. import javax.swing.event.ChangeListener;
  5. import javax.swing.text.AttributeSet;
  6. import javax.swing.text.Style;
  7.  
  8. class StyleSheet$ResolvedStyle extends StyleSheet.MuxingAttributeSet implements Style {
  9.    String name;
  10.    private int extendedIndex;
  11.  
  12.    StyleSheet$ResolvedStyle(String var1, AttributeSet[] var2, int var3) {
  13.       super.attrs = var2;
  14.       this.name = var1;
  15.       this.extendedIndex = var3;
  16.    }
  17.  
  18.    public void addAttribute(Object var1, Object var2) {
  19.    }
  20.  
  21.    public void addAttributes(AttributeSet var1) {
  22.    }
  23.  
  24.    public void addChangeListener(ChangeListener var1) {
  25.    }
  26.  
  27.    synchronized void addExtendedStyle(Style var1) {
  28.       ((StyleSheet.MuxingAttributeSet)this).insertAttributeSetAt(var1, super.attrs.length);
  29.    }
  30.  
  31.    int boundedIndexOf(String var1, char var2, int var3, int var4) {
  32.       int var5 = var1.indexOf(var2, var3);
  33.       return var5 >= var4 ? -1 : var5;
  34.    }
  35.  
  36.    public String getName() {
  37.       return this.name;
  38.    }
  39.  
  40.    synchronized void insertExtendedStyleAt(Style var1, int var2) {
  41.       ((StyleSheet.MuxingAttributeSet)this).insertAttributeSetAt(var1, this.extendedIndex + var2);
  42.    }
  43.  
  44.    synchronized void insertStyle(Style var1, int var2) {
  45.       int var3 = super.attrs.length;
  46.  
  47.       int var4;
  48.       for(var4 = 0; var4 < this.extendedIndex && var2 <= StyleSheet.getSpecificity(((Style)super.attrs[var4]).getName()); ++var4) {
  49.       }
  50.  
  51.       ((StyleSheet.MuxingAttributeSet)this).insertAttributeSetAt(var1, var4);
  52.       ++this.extendedIndex;
  53.    }
  54.  
  55.    protected boolean matches(String var1) {
  56.       int var2 = var1.length();
  57.       if (var2 == 0) {
  58.          return false;
  59.       } else {
  60.          int var3 = this.name.length();
  61.          int var4 = var1.lastIndexOf(32);
  62.          int var5 = this.name.lastIndexOf(32);
  63.          if (var4 >= 0) {
  64.             ++var4;
  65.          }
  66.  
  67.          if (var5 >= 0) {
  68.             ++var5;
  69.          }
  70.  
  71.          if (!this.matches(var1, var4, var2, var5, var3)) {
  72.             return false;
  73.          } else {
  74.             while(var4 != -1) {
  75.                var2 = var4 - 1;
  76.                var4 = var1.lastIndexOf(32, var2 - 1);
  77.                if (var4 >= 0) {
  78.                   ++var4;
  79.                }
  80.  
  81.                boolean var6;
  82.                for(var6 = false; !var6 && var5 != -1; var6 = this.matches(var1, var4, var2, var5, var3)) {
  83.                   var3 = var5 - 1;
  84.                   var5 = this.name.lastIndexOf(32, var3 - 1);
  85.                   if (var5 >= 0) {
  86.                      ++var5;
  87.                   }
  88.                }
  89.  
  90.                if (!var6) {
  91.                   return false;
  92.                }
  93.             }
  94.  
  95.             return true;
  96.          }
  97.       }
  98.    }
  99.  
  100.    boolean matches(String var1, int var2, int var3, int var4, int var5) {
  101.       var2 = Math.max(var2, 0);
  102.       var4 = Math.max(var4, 0);
  103.       int var6 = this.boundedIndexOf(this.name, '.', var4, var5);
  104.       int var7 = this.boundedIndexOf(this.name, '#', var4, var5);
  105.       int var8 = this.boundedIndexOf(var1, '.', var2, var3);
  106.       int var9 = this.boundedIndexOf(var1, '#', var2, var3);
  107.       if (var8 != -1) {
  108.          if (var6 == -1) {
  109.             return false;
  110.          } else {
  111.             if (var2 == var8) {
  112.                if (var5 - var6 != var3 - var8 || !var1.regionMatches(var2, this.name, var6, var5 - var6)) {
  113.                   return false;
  114.                }
  115.             } else if (var3 - var2 != var5 - var4 || !var1.regionMatches(var2, this.name, var4, var5 - var4)) {
  116.                return false;
  117.             }
  118.  
  119.             return true;
  120.          }
  121.       } else if (var9 != -1) {
  122.          if (var7 == -1) {
  123.             return false;
  124.          } else {
  125.             if (var2 == var9) {
  126.                if (var5 - var7 != var3 - var9 || !var1.regionMatches(var2, this.name, var7, var5 - var7)) {
  127.                   return false;
  128.                }
  129.             } else if (var3 - var2 != var5 - var4 || !var1.regionMatches(var2, this.name, var4, var5 - var4)) {
  130.                return false;
  131.             }
  132.  
  133.             return true;
  134.          }
  135.       } else if (var6 != -1) {
  136.          return var1.regionMatches(var2, this.name, var4, var6 - var4);
  137.       } else {
  138.          return var7 != -1 ? var1.regionMatches(var2, this.name, var4, var7 - var4) : var1.regionMatches(var2, this.name, var4, var5 - var4);
  139.       }
  140.    }
  141.  
  142.    public void removeAttribute(Object var1) {
  143.    }
  144.  
  145.    public void removeAttributes(Enumeration var1) {
  146.    }
  147.  
  148.    public void removeAttributes(AttributeSet var1) {
  149.    }
  150.  
  151.    public void removeChangeListener(ChangeListener var1) {
  152.    }
  153.  
  154.    synchronized void removeExtendedStyleAt(int var1) {
  155.       ((StyleSheet.MuxingAttributeSet)this).removeAttributeSetAt(this.extendedIndex + var1);
  156.    }
  157.  
  158.    synchronized void removeStyle(Style var1) {
  159.       for(int var2 = super.attrs.length - 1; var2 >= 0; --var2) {
  160.          if (super.attrs[var2] == var1) {
  161.             ((StyleSheet.MuxingAttributeSet)this).removeAttributeSetAt(var2);
  162.             if (var2 < this.extendedIndex) {
  163.                --this.extendedIndex;
  164.             }
  165.             break;
  166.          }
  167.       }
  168.  
  169.    }
  170.  
  171.    public void setResolveParent(AttributeSet var1) {
  172.    }
  173. }
  174.